home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / ply15doc.zip / QUICKREF.TXT < prev    next >
Text File  |  1992-11-08  |  8KB  |  265 lines

  1. This file contains an extremely abbreviated description of the command line
  2. flags, initialization file statements, and data file declarations for Polyray.
  3. See "polyray.doc" for more details.
  4.  
  5. Syntax:
  6.  
  7.    polyray datafile [ options ]
  8.  
  9. Command line options:
  10.  
  11.    -a              Perform simple antialiasing (neighbor averaging)
  12.    -A              Perform adaptive antialiasing (based on threshold)
  13.    -b pixels       pixels calculated between file flushes
  14.    -B              Flush the output file every scan line
  15.    -d probability  Dither objects using the given probability
  16.    -D scale        Dither all rays using the given probability
  17.    -J              Perform jittered antialiasing (fixed # of samples/pixel)
  18.    -o filename     Output file name (default "out.tga")
  19.    -p bits/pixel   Number of bits per pixel 8/16/24/32 (default 16)
  20.    -P pallette     Which pallette to use [0=grey, 1=666, 2=884]
  21.    -Q              Abort if any key is hit during trace
  22.    -q flags        Turn on/off various global shading options
  23.    -r renderer     Which rendering method [0=raytrace, 1=scan convert,
  24.                    2=wireframe]
  25.    -R              Resume an interrupted trace
  26.    -s samples      # of samples per pixel when performing antialiasing
  27.    -t status_vals  Status display type [0=none,1=totals,2=line,3=pixel].
  28.    -T threshold    Threshold to start oversampling (default 0.2)
  29.    -u              Write the output file in uncompressed form
  30.    -v              Trace from bottom to top
  31.    -V mode         Use VGA display while tracing [0=none,1=VGA]
  32.    -W              Wait for key before clearing display
  33.    -x columns      Set the x resolution
  34.    -y lines        Set the y resolution
  35.    -z start_line   Start a trace at a specified line
  36.  
  37. Initialization file ("polyray.ini") keywords:
  38.  
  39.    abort_test       true/false/on/off
  40.    alias_threshold  [Value to cause adaptive anitaliasing to start]
  41.    antialias        none/filter/jitter/adaptive
  42.    display          none/vga
  43.    max_level        [max depth of recursion]
  44.    max_lights       [max # of lights]
  45.    max_queue_size   [max # of objects in a priority queue]
  46.    max_samples      [# of samples to use with antialiasing, or focal blur]
  47.    pixel_size       [8, 16, 24, 32]
  48.    pixel_encoding   none/rle
  49.    renderer         ray_trace/scan_convert
  50.    shade_flags      [default/bit mask of flags, see section 1.7.1.4]
  51.    shadow_tolerance [miminum distance for blocking objects]
  52.    status           none/totals/line/pixel
  53.    warnings         on/off
  54.  
  55.    Any lines starting with "//" will be treated as comments & ignored.
  56.  
  57. Input file syntax:
  58.  
  59.    [viewpoint statement]
  60.    [object declaration]
  61.    [conditional statement]
  62.    define token expression
  63.    define token [object declaration]
  64.    define token [texture declaration]
  65.    define token transform { [rotate/translate/scale/shear statements] }
  66.    total_frames val
  67.    start_frame val
  68.    end_frame val
  69.    outfile "name"
  70.    outfile name
  71.    file_flush xxx
  72.    include "filename"
  73.    background color
  74.    background expression
  75.    haze coeff, starting_distance, color
  76.    light color, location
  77.    light location
  78.    spot_light color, location, pointed_at, Tightness, Angle, Falloff
  79.    spot_light location, pointed_at
  80.    textured_light { color color_expression [rotate/translate/... statements] }
  81.    directional_light color, direction
  82.    directional_light direction
  83.  
  84.  
  85. Viewpoint declaration:
  86.  
  87.     viewpoint {
  88.        [ from vexper ]
  89.        [ at vexper ]
  90.        [ up vexper ]
  91.        [ angle fexper ]
  92.        [ hither fexper ]
  93.        [ resolution fexper, fexper ]
  94.        [ aspect fexper ]
  95.        [ yon fexper ]
  96.        [ dither_rays fexper ]
  97.        [ dither_objects fexper ]
  98.        [ max_trace_depth fexper ]
  99.        [ aperture fexper ]
  100.        [ focal_distance ]
  101.        }
  102.  
  103. Object declaration:
  104.  
  105.    object {
  106.       Shape declaration
  107.       [ texture declaration ]
  108.       [ Object modifier declaration ]
  109.       }
  110.  
  111. Shape Declarations:
  112.  
  113.    bezier subdivision_type, flatness_value,
  114.           u_subdivisions, v_subdivision,
  115.           [ 16 comma-separated vertices, i.e.
  116.              <x0, y0, z0>, <x1, y1, z1>, ..., <x15, y15, z15> ]
  117.  
  118.    blob threshold:
  119.       blob_component1
  120.       [, sphere <x, y, z>, strength, radius ]
  121.       [, cylinder <x0, y0, z0>, <x1, y1, z1>, strength, radius ]
  122.       [, plane <nx, ny, nz>, d, strength, distance ]
  123.  
  124.    box <x0, y0, z0>, <x1, y1, z1>
  125.  
  126.    cone <x0, y0, z0>, r0, <x1, y1, z1>, r1
  127.  
  128.    cylinder <x0, y0, z0>, <x1, y1, z1>, r
  129.  
  130.    disc <cx, cy, cz>, <nx, ny, nz>, r
  131.    disc <cx, cy, cz>, <nx, ny, nz>, ir, or
  132.  
  133.    function f(x,y,z)
  134.  
  135.    gridded "filename", object1 object2 ...
  136.  
  137.    height_field "filename"
  138.    smooth_height_field "filename"
  139.  
  140.    height_fn xsize, zsize, min_x, max_x, min_z, max_z, expression
  141.    height_fn xsize, zsize, expression
  142.    smooth_height_fn xsize, zsize, min_x, max_x, min_z, max_z, expression
  143.    smooth_height_fn xsize, zsize, expression
  144.  
  145.    lathe type, direction, total_vertices,
  146.       <vert1.x,vert1.y,vert1.z>
  147.       [, <vert2.x, vert2.y, vert2.z>]
  148.       [, etc. for total_vertices vertices]
  149.  
  150.    parabola <x0, y0, z0>, <x1, y1, z1>, r
  151.  
  152.    polygon total_vertices,
  153.       <vert1.x,vert1.y,vert1.z>
  154.       [, <vert2.x, vert2.y, vert2.z>]
  155.       [, etc. for total_vertices vertices]
  156.  
  157.    polynomial f(x,y,z)
  158.  
  159.    sphere <center.x, center.y, center.z>, radius
  160.  
  161.    sweep type, direction, total_vertices,
  162.       <vert1.x,vert1.y,vert1.z>
  163.       [, <vert2.x, vert2.y, vert2.z>]
  164.       [, etc. for total_vertices vertices]
  165.  
  166.    torus r0, r1, <center.x, center.y, center.z>, <dir.x, dir.y, dir.z>
  167.  
  168.    patch <vert1.x,vert1.y,vert1.z>, <norm1.x,norm1.y,norm1.z>,
  169.          <vert2.x,vert2.y,vert2.z>, <norm2.x,norm2.y,norm2.z>,
  170.          <vert3.x,vert3.y,vert3.z>, <norm3.x,norm3.y,norm3.z>
  171.  
  172.    object1 + object2  - Union
  173.    object1 * object2  - Intersection
  174.    object1 - object2  - Difference
  175.    object1 & object2  - Clipping
  176.    ~object1           - Inverse
  177.  
  178. Root solver declarations (for blobs, polynomials, splined lathes, and tori):
  179.  
  180.    root_solver Ferrari
  181.    root_solver Vieta
  182.    root_solver Sturm
  183.  
  184. Object modifier statements:
  185.  
  186.    translate <tx, ty, tz>
  187.    rotate <rx,ry,rz>
  188.    scale <sx,sy,sz>
  189.    shear yx, zx, xy, zy, xz, yz
  190.    shading_flags flag1+flag2+...
  191.    u_steps u
  192.    v_steps v
  193.    bounding_box <x0,y0,z0>, <x1,y1,z1>
  194.  
  195. Shading flag values:
  196.  
  197.    1 = Shadow_Check, 2 = Reflect_Check, 4 = Transmit_Check,
  198.    8  = Two_Sides, 16 = Cast_Shadow, 32 = Check Primary Rays
  199.  
  200.  
  201. Textures:
  202.    texture {
  203.       [ texture declaration ]
  204.       [ rotate/translate/scale/shear ]
  205.       }
  206.  
  207. Texture declarations:
  208.  
  209.    surface { [ surface declarations ] }
  210.    noise surface { [ surface declarations ] }
  211.    special surface { [ surface declarations ] }
  212.    checker texture1, texture2
  213.    hexagon texture1, texture2, texture3
  214.    layered texture1, texture2, ..., textureN
  215.  
  216. Surface declarations:
  217.  
  218.    color <r, g, b>
  219.    ambient scale
  220.    ambient color, scale
  221.    diffuse scale
  222.    diffuse color, scale
  223.    specular color, scale
  224.    specular scale
  225.    reflection color, scale
  226.    reflection scale
  227.    transmission color, scale, ior
  228.    transmission scale, ior
  229.    microfacet kind angle
  230.  
  231. Microfacet kinds: Blinn, Cook, Gaussian, Phong, Reitz.
  232.  
  233. Noise Surface declarations:
  234.  
  235.    color <r, g, b>
  236.    ambient scale
  237.    diffuse scale
  238.    specular color, scale
  239.    reflection scale
  240.    transmission scale, ior
  241.    microfacet kind angle
  242.    color_map(map_entries)
  243.    bump_scale fexper
  244.    frequency fexper
  245.    phase fexper
  246.    lookup_fn index
  247.    normal_fn index
  248.    octaves fexper
  249.    position_fn index
  250.    position_scale fexper
  251.    turbulence fexper
  252.  
  253. Conditional processing:
  254.  
  255.    if (cexper)
  256.       [single declaration]
  257.  
  258.    if (cexper) {
  259.       [object/light/... declarations]
  260.       }
  261.    else {
  262.       [other object/light/... declarations]
  263.       }
  264.  
  265.